home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1999 February
/
EnigmA AMIGA RUN 34 (1999)(G.R. Edizioni)(IT)[!][issue 1999-02].iso
/
www
/
amitrix
/
swedish31.lha
/
Docs
/
docsearch.awebrx
< prev
next >
Wrap
Text File
|
1998-01-20
|
5KB
|
138 lines
/*******************************************************************
* *
* Docsearch.awebrx *
* *
* © 1997 Yvon Rozijn *
* *
* Sök i AWeb-manualen. Skapa index om så begärs eller ingen *
* indexfil existerar. Sök i indexfilen och skicka resultatet *
* till AWeb. *
* *
*******************************************************************/
/*******************************************************************
* *
* För att använda den här som en söktjänst för din egna lokala *
* HTML-filer, justera följande variabler: *
* *
* index = sökväg till indexfilen */
index = 'AWebPath:docs/docsearch.index'
/* makeindex = kommandorad för att skapa indexet *
* Indexskaparprogrammet har mallen DIR/A/M,TO/A *
* DIR = lådor att söka efter #?.html-filer i (ej rekursivt) *
* TO = namn på indexfil som skall skapas */
makeindex = 'AWebPath:docs/makeindex AWebPath:docs AWebPath:docs/plugins AWebPath:docs/settings AWebPath:docs/arexx' index
/* resultfile = sökväg till fil där resultatet lagras */
resultfile = 'T:docsearch'
/* searchindex = kommandorad för att söka i indexet. Sökargumenten *
* läggs till kommandoraden. *
* Sökprogrammet har mallen INDEX/A,TO/A,SEARCH/A/F *
* INDEX = sökväg till indexfil *
* TO = sökväg för sökresultat *
* SEARCH = text att söka efter */
searchindex = 'AWebPath:docs/searchindex' index resultfile
/* och justera HTML-koden i sökresultatet till att passa din *
* tillämpning. *
* *
*******************************************************************/
options results
options failat 20
parse source dummy1 dummy2 programname .
parse arg sarg
search=''
regenerate=''
interpret sarg
if search='' & regenerate='' then exit
su=upper(search)
nl='0a'x
if regenerate~='' | ~exists(index) then do
'chanopen "x-nil:docsearch/creating index"'
ch=result
'open "x-nil:docsearch/creating index"'
'chanheader' ch '"content-type: text/html"'
'chanheader' ch '"pragma: no-cache"'
doc='<html><title>Skapar sökindex</title>*N'
doc=doc || '<body><h1>Skapar index</h1>*N'
doc=doc || 'Ett sökindex skapas. Var god vänta...'
'chandata' ch '"' || doc || '" nl'
'chanclose' ch
address command makeindex
end
if search='' then do
'go back'
exit
end
if ~exists(index) then exit
'chanopen "file:///nil:docsearch/' || search || '"'
ch=result
'chanheader' ch '"content-type: text/html"'
'chanheader' ch '"pragma: no-cache"'
doc='<html><title>Sökresultat:' search '</title>*N'
doc=doc || '<base href=*"file:///AWebPath:docs/aweb.html*">*N'
doc=doc || '<body background=awebbg.iff>*N'
doc=doc || '<h1><img src=aweb.iff width=192 height=93 alt=*"(logo)*"> Sökresultat:' search '</h1>*N'
'chandata' ch '"' || doc || '" nl'
doc='<form action=*"x-aweb:rexx/' || programname || '*">*N'
doc=doc || 'Sök i manualen: <input name=search size=25 value=*"' || search || '*"> <input type=submit value=*"Sök*">*N'
doc=doc || '</form>*N'
doc=doc || '<ol>'
'chandata' ch '"' || doc || '" nl'
'open "file:///nil:docsearch/' || search || '"'
'allowcmd'
address command searchindex '"' || search || '"'
if open(f,resultfile,'R') then do
do until length(block)<480
block=readch(f,480)
/* Undvik problem om blocket slutar med "*".
* searchindex borde dock vara bättre här...
*/
if right(block,1)="*" then block=block||readch(f,1)
'chandata' ch '"' || block || '"'
end
call close f
address command 'delete' resultfile 'quiet'
end
doc='</ol>*N'
doc=doc || '<hr><a href=*"file:///AWebPath:docs/aweb.html*">Tillbaka till index</a>*N'
doc=doc || '<br><br><hr><form action=*"x-aweb:rexx/' || programname || '*">*N'
doc=doc || '<b>Tips:</b> När du har lagt till nya manualfiler,*N'
doc=doc || '<input type=submit name=Regenerate value=*"skapa*">*N'
doc=doc || 'sökindexet igen för att få rätt sökresultat.*N</form>'
'chandata' ch '"' || doc || '" nl'
'chanclose' ch